home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2003 #12 / Amiga Plus CD - 2003 - No. 12.iso / AmiSoft / Util / Moni / Scout.lha / Scout / Scout.history < prev    next >
Text File  |  2003-11-03  |  24KB  |  567 lines

  1.  
  2.  
  3.                    ------------------------------
  4.                     The program history of Scout
  5.                    ------------------------------
  6.  
  7. 03-Nov-2003  Release 3.3 Program version 37.264
  8.  
  9.   o as always: many, many, many minor bugs fixed
  10.  
  11.   o the number of functions in RAM instead of ROM is now always displayed in
  12.     decimal notation. No more "***" if all functions are RAM based. The detail
  13.     windows show the ratio of RAM based vectors to ROM based vectors.
  14.  
  15.   o the expansion list now has an own column for the product class instead of
  16.     merging this with the product name
  17.  
  18.   o added CLI specific information group to task detail window
  19.  
  20.   o changes some minor quirks in the networking code. Anyway, network support
  21.     is still far from being perfect.
  22.  
  23.   o several classes: changed list behaviour in network remote mode not to
  24.     react on double clicks. The "More" button in these windows already
  25.     reflected this behaviour.
  26.  
  27.   o added Miami(Dx) support. Done by AmiS <amis@amiga.org.ru>, the first
  28.     additional developer of Scout since it went open source!
  29.  
  30.   o extended Disassembler window and button to be able to show arbitrary data
  31.     in memory as hexdump. This is quite handy for structure elements like
  32.     "UserData" and similar.
  33.  
  34.   o pr_ConsoleTask and pr_FileSystemTask entries can now be shown as tasks
  35.  
  36.   o pr_CurrentDir and pr_HomeDir entries are now shown as path names instead
  37.     of addresses.
  38.  
  39.   o the sub object list now tries to decode hotkey events. For ~99% of all
  40.     combinations this try is successfull. Please eMail me if you encounter
  41.     unknown combinations and know *for* *sure* what it should be (this means
  42.     you are the developer of a certain application :) Even NewMouse/WheelMouse
  43.     events are supported!
  44.  
  45.   o began to restructure the appearance of some detail windows. These windows
  46.     now use virtual groups with one information item in each line. Thus it is
  47.     a lot easier to add more information items if needed without having to
  48.     think how to layout the whole window afterwards. Additionally the
  49.     misalignment that sometimes occured between information label and
  50.     information item is now gone and it is very easy to implement more
  51.     "detail" buttons like the Flags button or the Task button. If you don't
  52.     understand what the news above mean, simply try it and see yourself. I
  53.     hope all becomes clean then.
  54.  
  55.   o all scrollbars of NList lists are now *always* visible, regardless of what
  56.     you configured via the MUI preferences. This avoids a nasty bug in
  57.     NList.mcc and NListtree.mcc that causes the list/tree to give wrong
  58.     minimal sizes and thus making MUI paint these lists/trees over other GUI
  59.     elements. This has been reported by various people, but this is in fact no
  60.     bug in Scout, but in NList.mcc and NListtree.mcc!
  61.  
  62.   o 28-Aug-2003: inital import of the complete source. Now Scout is real
  63.     "open source"!! See www.sourceforge.net/projects/scoutos for more details.
  64.     These are the changes made so far since the most recent Aminet release:
  65.  
  66.     - the system's reset vectors are no longer simple labels with addresses,
  67.       but buttons. When you press one, you will get a disassembly of the
  68.       corresponding address. This feature only works if you have THOR's
  69.       disassembler.library V40 installed. If this one is missing you will get
  70.       a simple hex dump of the memory area.
  71.  
  72.     - Exec's resident modules are now sorted by priority by default. This
  73.       seems to be a bit more intuitive than keeping one part of the list
  74.       sorted by priority and the other part not sorted at all. Of course, the
  75.       entries that are contained in both lists (KickTagPtr and ResModules)
  76.       still appear twice, once from ResModules (normal) and once from
  77.       KickTagPtr (highlighted).
  78.  
  79.     - resident commands with more than 2 hunks were enumerated wrongly, e.g
  80.       they had two hunks labeled "number 2". This is fixed now.
  81.  
  82.     - the Mounts window seemed to crash MorphOS because of uncorrectly
  83.       interpreted FileSysStartMsg pointers. Now there are lots of checks to
  84.       ensure Scout handles only correct FSSMs (Harry Sintonen
  85.       <sintonen@iki.fi>).
  86.  
  87.     - the KickTagPtr list has been iterated completely wrong. Now this is
  88.       corrected and all resident entries should be displayed (Chris Hodges
  89.       <chrisly@platon42.de>).
  90.  
  91.     - public screens with open windows can now be closed. This was impossible
  92.       before, because Intuition V36 doesn't let you close a screen with opened
  93.       windows. The situation is even worse for public screens which have a
  94.       visitor counter. Now all locks to a public screen are unlocked before
  95.       closing it.
  96.  
  97.     - timers can now be aborted. Thus you can speed up timeouts :)
  98.  
  99.     - the remaining running times in the Timer window were completely wrong
  100.       due to wrong 64bit arithmetic and overflows. All calculations are now
  101.       done by special 64bit math routines, which were already used in the
  102.       Mounts window to calculate the correct volume size.
  103.  
  104.     - the LowMemory window can now Cause() a specific handler. This had been
  105.       implemented for ages, but for unknown reasons Richard Körber had
  106.       disabled this function. Now it is back again :)
  107.  
  108.     - lots of code cleanups. Many unused and superflous variables have been
  109.       deleted, many libraries are only opened when needed, etc.
  110.  
  111.     - some lists are now printed/saved to file in sorted order instead of
  112.       random order. This makes it a lot easier to look for certain entries.
  113.       Some other lists are still printed/saved in random order, because
  114.       sorting them by name makes no sense, since they are sorted by priority.
  115.  
  116.     - some lists were totally screwed up when being printed to a file.
  117.  
  118.     - the font display used wrong color on some system, so you didn't see
  119.       anything (Stellan <blakkhar@nwn.de>).
  120.  
  121.  
  122. 18-Apr-2003  Release 3.2 Program version 37.249
  123.  
  124.   o  many lists didn't become updated after a change due to wrong return values
  125.  
  126.   o  informations like the signal task of a message port can now trigger the
  127.      corresponding task window to open. Thus you don't need to remember the task
  128.      name a look it up in the task window to get the desired information.
  129.  
  130.   o  card.resource was treated as a "special" resource without a library
  131.      structure. This is fixed now. Additionally the functions of card.resource
  132.      are now displayed correctly. (Luca 'Hexaae' Longone <hexaae@tiscalinet.it>)
  133.  
  134.   o  the BoingBag number is included in the OS description, "#0" means there is
  135.      no known BoingBag installed.
  136.  
  137.   o  the system window can show some more CPU options, like Load/Store Bypass
  138.  
  139.   o  the product and class strings were swapped in the Expansions detain window.
  140.  
  141.   o  all windows could cause severe Enforcer-Hits when dealing with invalid
  142.      strings. If you have THOR's mmu.library installed this one will be used to
  143.      detect invalid strings before they are accessed.
  144.  
  145.   o  the tc_TrapAlloc and tc_TrapAble fields of the task structure were handled
  146.      wrong for tasks with TF_ETASK flag set. (Harry 'Piru' Sintonen
  147.      <sintonen@iki.fi>)
  148.  
  149.   o  several compare functions have been rewritten, because for example version
  150.      numbers were compared totally wrong. That means that "20.0" was "smaller"
  151.      than "2.0".
  152.  
  153.   o  Scout now checks the MCC versions of NList.mcc, NListview.mcc and
  154.      NListtree.mcc to ensure you have the required versions. For now NList.mcc
  155.      V20.106, NListview.mcc V19.63 and NListtree.mcc V18.13 are the minimal
  156.      required version.
  157.  
  158.   o  oops, the ResetHandlers menu entry was falsely named "AHI ResetHandlers".
  159.      Of course AHI and ResetHandlers have nothing in common.
  160.  
  161.   o  after scanning the list of catalogs in locale.library I forgot to Permit()
  162.      task switching again. Shame on me, this caused very strange effects when
  163.      scrolling lists. (Luca 'Hexaae' Longone <hexaae@tiscalinet.it>)
  164.  
  165.   o  automatic window closing in "single windows" mode was buggy, because it
  166.      removed windows from the application before closing them, instead of simply
  167.      notifying them to close. Thus you couldn't open that window anymore,
  168.      because certain callbacks had not been called. As an addition the switching
  169.      between the windows is now much faster, because the older window is closed
  170.      before the new is window is opened.
  171.  
  172.   o  the "single windows" option can now be changed while Scout is running. If
  173.      you have multiple windows opened the least recently opened windows will be
  174.      closed. This behaviour will be propagated to all child windows.
  175.  
  176.   o  removing of the first assign of an assign list (done via C:Assign <assign>
  177.      <path> add) removed all assigns. Now every assign list entry is handled the
  178.      same way.
  179.  
  180.  
  181. 16-Sep-2002  Release 3.1 Program version 37.237
  182.  
  183.   o  all functions that access non-public lists and lists without locking
  184.      mechanism are changed that these lists are "locked" by Forbid()/Permit()
  185.      and all necessary data is copied to a temporary list before it is
  186.      displayed. This makes Scout work MUCH more safer, causes less crashes,
  187.      less lock-ups. And somehow the lists are displayed a bit faster, but maybe
  188.      this is just an illusion and thus my very personal and very subjective
  189.      opinion :)
  190.  
  191.   o  fixed several bugs in many small function, far too much to list them all
  192.      here.
  193.  
  194.   o  the Task window now shows more exact task states when a task or process is
  195.      waiting for certain single signals only, instead of just "waiting". If a
  196.      task is waiting for more than one signal then it is still declared as
  197.      "waiting".
  198.  
  199.   o  the Vectors window swallowed the last character of each address due to
  200.      too small MUI objects. Fixed.
  201.  
  202.   o  the Interrupt window now shows all interrupts in the system, not just the
  203.      interrupts in use. Additionally the interrupt priority level (IPL) is
  204.      shown.
  205.  
  206.   o  a semaphore's priority is now shown in the Semaphores window and the
  207.      priority can be changed, too.
  208.  
  209.   o  added a ResetHandler window, which lists the handler that will be invoked
  210.      when you press the magic reset key combination :)
  211.  
  212.   o  the InputHandler window now get it's list in a system clean way to be able
  213.      to work with future versions of input device, like the input.device V50
  214.      included in MorphOS (Harry 'Piru' Sintonen <sintonen@iki.fi>).
  215.  
  216.   o  the function to get the task name of certain structures is now much more
  217.      fail-safe, especially for BCPL strings which where falsely considered
  218.      to be NUL-terminated, which is not necessarily the case (Harry 'Piru'
  219.      Sintonen <sintonen@iki.fi>).
  220.  
  221.   o  NSD device recognition had a little bug that caused some devices not be
  222.      recognized as NSD-compliant ones (Harry 'Piru' Sintonen <sintonen@iki.fi>).
  223.  
  224.   o  The System window crashed when identify.library wasn't available. Now it
  225.      will display many messages saying that you don't have identify.library
  226.      (Todd A. Oberly <taoberly@mindspring.com>).
  227.  
  228.   o  Scout now tries to open identify.library from LIBS: first and from PROGDIR:
  229.      afterwards in case you don't have it stored in LIBS:. Requested by Todd A.
  230.      Oberly <taoberly@mindspring.com>
  231.  
  232.   o  the last alert information in the System window can now be displayed
  233.      without forcing an Enforcer-Hit if you have THOR's mmu.library installed.
  234.      Without mmu.library you'll have to live with these unevitable hits. It is
  235.      simply not possible to show the real last Guru without making Enforcer
  236.      scream.
  237.  
  238.   o  AmigaE programs with own stack swapping mechanism are now detected and the
  239.      free stack size in the Tasks window is no longer calculated for such tasks
  240.      (Harry 'Piru' Sintonen <sintonen@iki.fi>).
  241.  
  242.   o  AmigaDOS error requesters ("Please insert volume...") are now disabled
  243.      while looking for .fd files. This affects the Patches and the Functions
  244.      windows (Gunther Nikl <gni@gecko.de>). Additionally the hexadecimal offsets
  245.      now are preceded by "$" to make it easier to recognize them as hexadecimal
  246.      numbers
  247.  
  248.   o  the Remove function in the Tasks window didn't work anymore due to a wrong
  249.      invocation of the RemoveTask command. Fixed.
  250.  
  251.  
  252. 16-May-2002  Release 3.0 Program version 37.227
  253.  
  254.   o  Scout has been rewritten nearly completely. All lists have been replaced
  255.      by the much more advanced NList/NListtree classes. Thus the "sort" buttons
  256.      below the lists are gone, because you can either sort the lists by clicking
  257.      on the desired list column, or the lists don't need any sorting, because
  258.      they are sorted "by nature" (ie interrupts and BOOPSI classes), and
  259.      therefore displayed in a treeview instead of a list.
  260.      Additionally I have converted every single window into a MUI custom class.
  261.      This makes further development much easier and more safe.
  262.  
  263.   o  when gathering system information only "safe" string functions are used.
  264.      This means that these functions take care of the maximum size of a string,
  265.      there can't be any "string overflows" anymore.
  266.  
  267.   o  the tasks window now shows the remaining free stack of each task, too. So
  268.      you don't need to open the detail window to see the current stack usage.
  269.      If the remaining stack size is less then 512 bytes the stack entry will be
  270.      highlighted. You should have an eye on such tasks, or (even better)
  271.      increase the stack size if possible.
  272.  
  273.   o  Scout is now partitially localized. All the button texts and requester
  274.      messages are available in the catalog description. Currently only the
  275.      built-in english strings are available.
  276.  
  277.   o  all windows feature a "parent mode". Imagine the following: you open the
  278.      ports window, after that you open a port detail window via the "More"
  279.      button and finally you open the flags window for this port. After all that
  280.      you close the ports window and both the ports detail window and the flags
  281.      window will be closed, because their "parent" window has been closed.
  282.      This is a much more intuitive behaviour than having open sub windows while
  283.      the window, which lead to these sub windows, has been closed already.
  284.  
  285.   o  Scout can now show a list of all patched functions (libraries, devices and
  286.      resources) if you have either THOR's SaferPatches or SetMan 2.x installed.
  287.      I recommend SaferPatches, because it is written with much more sensibility
  288.      for AmigaOS and it's fragile SetFunction() problems.
  289.  
  290.   o  Scout can now show a list of all locale catalogs currently in memory.
  291.  
  292.   o  the devices detail window has been prepared for the forthcomming SANA2-R4
  293.      standard, which offers new commands. Anyway, currently no network driver
  294.      supports these new commands (as far as I know).
  295.  
  296.   o  Scout can now a list of all available AHI audiomodes and all available
  297.      information for each audiomode.
  298.  
  299.  
  300. 13-Feb-2002  Release 2.15 Program version 37.216
  301.  
  302.   o  the Appear/Disappear buttons in the commodities window no reflect the
  303.      ability of the selected commodity to appear/disappear, just like the
  304.      Exchange program does
  305.  
  306.   o  the Enforcer-hit-on-task-window-closure is fixed now. Many, many stupid
  307.      bugs had to be fixed. It's really a shame in which way official Autodocs
  308.      are ignored and programs are written agains any sane human intelligence :(
  309.      C= offered enough ways to initialize certain structures by official library
  310.      functions. Why the hell don't some people use them?
  311.  
  312.   o  timer routines during CPU usage calculation cleaned up, no more pending
  313.      messages when DeleteMsgPort()ing the reply port. A really stupid bug :(
  314.  
  315.   o  the CPU patch semaphore had been initialized completely wrong, causing
  316.      Enforcer hits and many strange things. I really don't know what Scout's
  317.      former programmers had in mind, but it must have been very weird :(
  318.  
  319.   o  additional assigns established via "assign <ass> <path> add" are now sorted
  320.      correctly, and not vice versa
  321.  
  322.   o  I don't know why, but somehow the 2.14 release didn't appear on Aminet, but
  323.      just the source code archive. So, here is a new release which fixes a few
  324.      more bugs, too.
  325.  
  326.  
  327. 06-Feb-2002  Release 2.14 Program version 37.212
  328.  
  329.   o  included latest fixes from Richard Körber, that were available on Aminet
  330.  
  331.   o  somehow I forgot the version string. Now it is back again :)
  332.  
  333.   o  the buttons in the main window are now sorted alphabetically and have all
  334.      the same size.
  335.  
  336.   o  the screen depth in the screen detail window is now determined via
  337.      graphics/GetBitMapAttr(), instead of direct peeking. This always gives the
  338.      correct depth, and not the depth the programm wanted.
  339.  
  340.   o  fixed bad return code when creating custom classes. This could lead to
  341.      non-functioning font display.
  342.  
  343.   o  the program icon is now used as iconify icon, instead of the MUI default
  344.      icon
  345.  
  346.   o  the interrupt window now shows the interrupt names instead of interrupt
  347.      numbers
  348.  
  349.   o  the ports window now show the flag entry of each message port
  350.  
  351.   o  when removing tasks you are asked if you want to remove message ports,
  352.      close opened windows, etc. by this task. Please remember: AmigaOS never had
  353.      a thing like resource tracking, so you cannot free everything that was
  354.      allocated by a task. Also remember that this function is a HACK, that means
  355.      anything can happen, and it is DANGEROUS to hardly remove this stuff,
  356.      because other tasks can still try to access this stuff. You have been
  357.      warned...
  358.  
  359.   o  the font window now show the font's tf_XSize, too.
  360.  
  361.   o  the task list can now be sorted by CPU usage, too. This makes Scout to a
  362.      kind of Unix' command "top". Unfortunately this consumes a little bit more
  363.      CPU time than the other sorting modes. All tasks with the same CPU usage
  364.      will be sorted alphabetically.
  365.  
  366.   o  the assign list can now be sorted by path name, too. Thus it is easier to
  367.      search for assigns to certain directories.
  368.  
  369.   o  the font preview now shows character 0xa4. If you have installed the Euro
  370.      update from H&P then you can see the Euro and the Cent sign for the updated
  371.      fonts.
  372.  
  373.  
  374. 26-Nov-2001  Release 2.13 Program version 37.210
  375.  
  376.   o  devices detail window now shows the device's NewStyle commands, if
  377.      supported
  378.  
  379.   o  detail window for FileSystem.resource now shows all currently
  380.      available filesystems
  381.  
  382.   o  font window now shows a sample of the selected font
  383.  
  384.   o  libraries/devices/resources list now includes the version number
  385.  
  386.   o  all listviews are part of the MUI cycle chain. This allows you to control
  387.      Scout completely by keyboard.
  388.  
  389.   o  the BoopsiClasses window now shows the superclasses by name and not as
  390.      addresses
  391.  
  392.   o  the Locks window can now show the path of exclusively locked files or
  393.      directories
  394.  
  395.   o  the Mounted Devs window now shows the devices filesystem
  396.  
  397.   o  the "MUI lock" problems seems to be fixed. At least for me there are no
  398.      more lockups. I hope this is a general "feature".
  399.  
  400.   o  Removed many, many internal "crap", like uninitialized variables, simply
  401.      wrong code, etc. This reduced the code size by ~20K, although many new
  402.      features have been added!
  403.  
  404.   o  Many, many, many minor internal cleanups and optimizations. Far too many to
  405.      mention every single change...
  406.  
  407.   o  Development took over by Thore Böckelmann <tboeckel@uni-paderborn.de>
  408.  
  409.  
  410. 30-Oct-97  Release 2.10 Program version 37.204
  411.  
  412.   o  Menu shortcuts set to uppercase (style guide) [Marcin Orlowski]
  413.  
  414.   o  Print filerequester opened in Save mode [Marcin Orlowski]
  415.  
  416.   o  identify.library is optional now, but Scout will then have a few
  417.      restrictions [Daniel Lundberg]
  418.  
  419.   o  Implemented BOOPSI classes window
  420.  
  421.   o  Improved the System window, now using identify V8 and showing
  422.      Cache state; added an Update button
  423.  
  424.   o  All identify strings are in English now, no more language mixture
  425.  
  426.   o  The Expansion window is consistent now, but not compatible to
  427.      older Scouts. Make sure to run Scout R2.10 on the remote system
  428.      as well when using TCP/IP.
  429.  
  430.   o  Board names are now shown in the expansion list
  431.  
  432.   o  Re-arranged the main window buttons. Sorry but this was necessary.
  433.  
  434.   o  Re-arranged the devices and resources window buttons so the window
  435.      can be sized smaller. [Andreas Benden]
  436.  
  437.   o  Some minor internal cleanups and optimizations
  438.  
  439.  
  440. 22-Sep-97  Release 2.9 Program version 37.192
  441.  
  442.   o  Forgot to free some memory
  443.  
  444.   o  Implemented Allocations window
  445.  
  446.   o  Implemented Timer window
  447.  
  448.   o  Added the new menu gadgets to the cycle chain
  449.  
  450.   o  Fixed minor bug in LowMemory window
  451.  
  452.   o  Recompiled with SAS/C 6.58
  453.  
  454.   o  Scout is FreeWare now
  455.  
  456.  
  457. 01-Aug-97  Release 2.8 Program version 37.184
  458.  
  459.   o  "C" is now a valid shortcut for "COMMAND"
  460.  
  461.   o  Implemented Low Memory window
  462.  
  463.   o  Implemented Commodities window
  464.  
  465.   o  Implemented ScreenMode window
  466.  
  467.   o  Implemented System window
  468.  
  469.   o  Further minor MUI optimizations
  470.  
  471.   o  CPU/Chipset info transferred from Expansion window to System window
  472.  
  473.   o  Function list of Libraries/Devices/Resources available if the appropriate
  474.      .fd file can be found in the FD: assign.
  475.  
  476.  
  477. 25-Jul-97  Release 2.7 Program version 37.156 (internal release)
  478.  
  479.   o  Development continued by Richard Körber
  480.  
  481.   o  Some minor MUI optimizations
  482.  
  483.   o  "Scout" logo added =)
  484.  
  485.   o  CPU usage is now nicely displayed in a gauge
  486.  
  487.   o  Removed PatchWork hits
  488.  
  489.   o  Using identify.library for identifying hardware expansions
  490.  
  491. __________________________________________________________________________
  492.  
  493.  
  494. 15-Feb-96  Release 2.6 Program version 37.138
  495.  
  496.   o  The custom chips was not correctly displayed.
  497.      (Reported by Marius Sundbakken and Christoph Rickers)
  498.  
  499.   o  Changed some details of expansions display.
  500.  
  501.   o  Fixed bug by displaying the CPU usage of tasks in per cent. The
  502.      stack size of Scout's cheat task was not correctly set.
  503.      (Reported by Peter Kaltstein and Andreas Fredriksson)
  504.  
  505.   o  Changed scan routine of locks (with help from Gary Duncan).
  506.      Perhaps a bug was removed by getting the list of locks.
  507.  
  508.   o  Fixed portlist killing bug. (This bug happened sometimes, if
  509.      Scout was started more than once.)  =¦^(
  510.  
  511.   o  Scout did not correctly recognize the 68060 cpu.
  512.      (Reported by Lee Huggett)
  513.  
  514.   o  Now all flags should be displayed with their names.
  515.      (Hi Marius!  =¦^)
  516.  
  517.   o  Fixed MEMSIZE display bug in expansions detail window.
  518.      (Reported by Tony Leneis)
  519.  
  520.   o  Fixed small enforcer hit that sometimes appeared at the 
  521.      detail window of windows and screens.
  522.      (Reported by Mario Kemper)
  523.  
  524.  
  525. 12-Dec-95  Release 2.5  Program version 37.124
  526.  
  527.   o  Fixed small bug in the display of expansion data (AmiTCP).
  528.  
  529.   o  Changed window titles by using Scout as TCP/IP client.
  530.                            =¦^)
  531.  
  532.   o  The option 'STARTUP' can also be used for single ARexx
  533.      commands.
  534.  
  535.      Example:
  536.                1> scout startup "OpenWindow Tasks"
  537.  
  538.   o  Now there's no border for an active object by opening
  539.      a list window. If you want to use the cursor keys for the
  540.      listview gadgets, you have to press TAB first.
  541.  
  542.   o  Added command 'PrintList <ListCharacter> <FileName>'.
  543.      This command is available via ARexx and shell (as parameter).
  544.  
  545.   o  Small memory eating bug fixed. It only appears by using
  546.      Scout as client or daemon (TCP/IP).
  547.  
  548.   o  Now the expansion list window also includes informations
  549.      about the processor(s) and the custom chips. 
  550.  
  551.   o  Patch output removed ('Patches installed!').
  552.  
  553.   o  Some minor bug fixes made.
  554.  
  555.  
  556. 04-Jul-95  Release 2.4  Program version 37.116
  557.  
  558.   o  Fixed enforcer hit at freeing assign pool.
  559.  
  560.   o  Changed routine for getting screen mode names (with help
  561.      from Stefan Sommerfeld).  =¦^)
  562.  
  563.   o  Fixed enforcer hits at the beginning. (Oh no...)
  564.  
  565.  
  566. [earlier history stripped]
  567.